Mark esh-proc-test/kill-pipeline as unstable for now
authorRob Browning <rlb@defaultvalue.org>
Mon, 10 Nov 2025 18:20:23 +0000 (12:20 -0600)
committerRob Browning <rlb@defaultvalue.org>
Mon, 10 Nov 2025 18:25:27 +0000 (12:25 -0600)
commitd4a154eec2184afba41a1f558993427baa57e2d9
tree71c9bf035f6db8d84627ea4e4596ac170c6a0d33
parent60a4ccd482d6856c7aa1cecf0d9ab2461c27b96d
Mark esh-proc-test/kill-pipeline as unstable for now

Currently fails on at least s390x from time to time. It doesn't take
long to  reproduce via

  (set -ex; while true; do make lisp/eshell/esh-proc-tests EMACS_TEST_VERBOSE=true; done)

from debian/build-lucid/test/. The failure looks like this:

     passed   3/24  esh-proc-test/exit-status/with-stderr-pipe (0.101971 sec)
  Test esh-proc-test/kill-pipeline backtrace:
    signal(ert-test-failed (((should (string-match-p (rx bos (32 (or "in
    ert-fail(((should (string-match-p (rx bos (32 (or "interrupt" (seq "
    (if (unwind-protect (setq value-154 (apply fn-152 args-153)) (setq f
    (let (form-description-156) (if (unwind-protect (setq value-154 (app
    (let ((value-154 'ert-form-evaluation-aborted-155)) (let (form-descr
    (let* ((fn-152 #'string-match-p) (args-153 (condition-case err (list
    (let ((output-start (eshell-beginning-of-output))) (eshell-kill-proc
    (let ((ert--infos (cons (cons "Command logs: " #'eshell-get-debug-lo
    (save-current-buffer (set-buffer eshell-buffer) (let ((ert--infos (c
    (unwind-protect (save-current-buffer (set-buffer eshell-buffer) (let
    (let ((eshell-buffer (eshell t))) (unwind-protect (save-current-buff
    (let ((process-environment (cons "HISTFILE" process-environment)) (e
    (progn (let ((process-environment (cons "HISTFILE" process-environme
    (unwind-protect (progn (let ((process-environment (cons "HISTFILE" p
    (let* ((coding-system-for-write nil) (temp-file (file-name-as-direct
    (save-current-buffer (let* ((coding-system-for-write nil) (temp-file
    #f(lambda () [t] (let ((value-145 (gensym "ert-form-evaluation-abort
    #f(compiled-function () #<bytecode 0xadfd76a69b57547>)()
    handler-bind-1(#f(compiled-function () #<bytecode 0xadfd76a69b57547>
    ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
    ert-run-test(#s(ert-test :name esh-proc-test/kill-pipeline :document
    ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
    ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
    ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
    ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
    eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
    command-line-1(("-L" ":/home/rlb/emacs/debian/build-src/test" "-l" "
    command-line()
    normal-top-level()
  Test esh-proc-test/kill-pipeline condition:
      Command logs: command: "sh -c 'while true; do echo y; sleep 1; done' | sh -c 'while true; do read NAME; done'"

                    ----------------------------------------
                    [process] started external process `sh'

                    /usr/bin/sh -c while\ true\;\ do\ read\ NAME\;\ done
                    ----------------------------------------
                    [process] started external process `sh<1>'

                    /usr/bin/sh -c while\ true\;\ do\ echo\ y\;\ sleep\ 1\;\ done
                    ----------------------------------------
                    [process] received output from process `sh<1>'

                    y

                    ----------------------------------------
                    [process] forwarding output from process `sh<1>'

                    y

                    ----------------------------------------
                    [process] sentinel for external process `sh<1>': "killed
                    "
                    ----------------------------------------
                    [process] i/o busy for process `sh<1>'
                    ----------------------------------------
                    [process] sentinel for external process `sh-stderr': "finished
                    "
                    ----------------------------------------
                    [process] finished external process `sh-stderr'
                    ----------------------------------------
                    [process] sentinel for external process `sh': "killed
                    "
                    ----------------------------------------
                    [process] finished external process `sh'
      (ert-test-failed
       ((should
         (string-match-p (rx bos ... eos)
                        (buffer-substring-no-properties output-start ...)))
        :form
        (string-match-p "\\`\\(?:\\(?:interrupt\\|killed.*\\)\n\\)?\\'"
                       "/home/rlb/emacs/debian/build-lucid/test $ sh -c 'while true; do echo y; sleep 1; done' | sh -c 'while true; do read NAME; done'\n")
        :value nil))
     FAILED   4/24  esh-proc-test/kill-pipeline (0.003864 sec) at ../../build-src/test/lisp/eshell/esh-proc-tests.el:300
  Error running timer: (error "Selecting deleted buffer")
     passed   5/24  esh-proc-test/kill-pipeline-head (0.102912 sec)
     passed   6/24  esh-proc-test/kill-process/background-prompt (0.001595 sec)
  [sleep]+ Done (/usr/bin/sleep 100)
     passed   7/24  esh-proc-test/kill-process/foreground-only (0.203248 sec)
     passed   8/24  esh-proc-test/kill-process/redirect-message (0.001616 sec)
     passed   9/24  esh-proc-test/output/remote-redirect (0.160153 sec)
test/lisp/eshell/esh-proc-tests.el